// 将增删改查都进行一遍封装
// 获取表格数据
export function getData(root,url,params){
  root.service.get(url,{params:params || {}})
  .then(res=>{
    if(res.data.status== 200){
      root.tableData = res.data.data,
      root.total = res.data.total
    }
  })
  .catch(err=>{
    throw err
  })
}

// 新增和修改方法的封装
import qs from 'qs'
export function changeInfo(root,method,url,form,callback){
  let data = qs.stringify(form)
  root.service[method](url,data)
  .then((res)=>{
    if(res.data.status == 200){
      callback(root,url)
      root.dialogFormVisible = false
      root.$message({type:'success',message:res.data.message})
    }
  })
}

// 删除方法的封装
export function delData(root,url,id,callback){
    root.$alert('你确定要删除嘛', '提示', {
      confirmButtonText: '确定',
      callback: () => {
          root.service.delete(`${url}/${id}`).then(res=>{
            if (res.data.status == 200) {
            callback(root,url)
            root.$message({ message: res.data.message, type: 'success' })
          }
          })
          .catch(err=>{
            throw err
          })
      },
    })
}

// 作业列表数据的接口
export function getTableData(root,url,params,arr){ //arr是complete参数所需要转换的字段
  root.service.get(url,{params:params||{}})
  .then((res)=>{
    if(res.data.status == 200){
      root.tableData = res.data.data
      root.total = res.data.total
      root.tableData.map(item=>{
        arr.map(aItem=>{
          // 这种遍历方式类似于data.complete从而达到对每一项数据的变化
          item[aItem] ? item[aItem+'_text'] = "是" : item[aItem+'_text'] = "否"
        })
      })
    }
    // 进行数据加载的操作
    root.loading = false
  })
  .catch(err=>{
    throw err
  })
}